17 research outputs found

    Repetitive Model Refactoring for Design Space Exploration of Intensive Signal Processing Applications

    Get PDF
    The efficient design of computation intensive multidimensional signal processing application requires to deal with three kinds of constraints: those implied by the data dependencies, the non functional requirements (real-time, power consumption) and the availability of resources of the execution platform. We propose here a strategy to use a refactoring tool dedicated to this kind of applications to help explore the design space. This strategy is illustrated on an industrial radar application modeled using the Modeling and Analysis of Real-time and Embedded systems (MARTE) UML profile. It allows to find good trade-offs in the usage of storage and computation resources and in the parallelism (both task and data parallelism) exploitation

    Logical Time @ Work: Capturing Data Dependencies and Platform Constraints

    Get PDF
    International audienceData-flow models are convenient to represent signal processing systems. They precisely reflect the data-dependencies and numerous algorithms exist to compute a static schedule that optimizes a given criterion especially for parallel implementations. Once deployed the data-flow models must be refined with constraints imposed by the environment and the execution platform. In this paper, we show how we can model data dependencies supported by multi-dimensional synchronous data flow with logical time and extend these data dependencies with additional logical constraints imposed by the environment. Making explicit these external constraints allows the exploration of further solutions during the scheduling computation

    Logical time at work: capturing data dependencies and platform constraints

    Get PDF
    International audienceData-flow models are convenient to represent signal processing systems. They precisely reflect the data-dependencies and numerous algorithms exist to compute a static schedule that optimizes a given criterion especially for parallel implementations. Once deployed the data-flow models must be refined with constraints imposed by the environment and the execution platform. In this paper, we show how we can model data dependencies supported by multi-dimensional synchronous data flow with logical time and extend these data dependencies with additional logical constraints imposed by the environment. Making explicit these external constraints allows the exploration of further solutions during the scheduling computation

    Optimizations for systematic and intensive signal processing applications on Systems-on-Chip

    No full text
    Les applications de traitement intensif de signal apparaissent dans de nombreux domaines d'applications tels que multimédia ou systèmes de détection. Ces applications gèrent les structures de données multidimensionnelles (principalement des tableaux) pour traiter les différentes dimensions des données (espace, temps, fréquence). Un langage de spécification permettant l'utilisation directe de ces différentes dimensions avec un haut niveau d'abstraction est une des clés de la manipulation de la complexité de ces applications et permet de bénéficier de leur parallélisme potentiel. Le langage de spécification Array-OL est conçu pour faire exactement cela. Dans cette thèse, nous introduisons une extension d'Array-OL pour exprimer des dépendances cycliques par des dépendances interrépétitions uniformes. Nous montrons que ce langage de spécification est capable d'exprimer les principaux motifs de calcul du domaine de traitement de signal intensif. Nous discutons aussi de la modélisation répétitive des applications parallèles, des architectures répétitives et les placements uniformes des premières sur les secondes, en utilisant les concepts Array-OL intégrés dans le profil UML MARTE (Modeling and Analysis of Real-time and Embedded systems). Des transformations de haut niveau data-parallèles sont disponibles pour adapter l'application à l'exécution, ce qui permet de choisir la granularité des flots et une simple expression du placement en étiquetant chaque répétition par son mode d'exécution: data parallèle ou séquentiel. L'ensemble des transformations a été revu, étendu et implémenté dans le cadre de l'environnement de comodélisation pour les systèmes embarqués, Gaspard2. Avec l'introduction des dépendances uniformes, notre intérêt s'est tourné aussi sur l'interaction entre ces dépendances et les transformations de haut niveau. C'est essentiel, afin de permettre l'utilisation des outils de refactoring sur les modèles avec dépendances uniformes. En utilisant les outils de refactoring de haut niveau, des stratégies et des heuristiques peuvent être conçues pour aider à l'exploration de l'espace de conception. Nous proposons une stratégie qui permet de trouver de bons compromis entre l'usage de stockage et de ressources de calcul, et dans l'exploitation de parallélisme (à la fois de tâches et de données), stratégie illustrée sur une application industrielle radar.Intensive signal processing applications appear in many application domains such as video processing or detection systems. These applications handle multidimensional data structures (mainly arrays) to deal with the various dimensions of the data (space, time, frequency). A specification language allowing the direct manipulation of these different dimensions with a high level of abstraction is a key to handling the complexity of these applications and to benefit from their massive potential parallelism. The Array-OL specification language is designed to do just that. In this thesis, we introduce an extension of Array-OL to express cycle dependences by the way of uniform inter-repetition dependences. We show that this specification language is able to express the main patterns of computation of the intensive signal processing domain. We discuss also the repetitive modeling of parallel applications, repetitive architectures and uniform mappings of the former to the latter, using the Array-OL concepts integrated into the Modeling and Analysis of Real-time and Embedded systems (MARTE) UML profile. High-level data-parallel transformations are available to adapt the application to the execution, allowing to choose the granularity of the flows and a simple expression of the mapping by tagging each repetition by its execution mode: data-parallel or sequential. The whole set of transformations was reviewed, extended and implemented as a part of the Gaspard2 co-design environment for embedded systems. With the introduction of the uniform dependences into the specification, our interest turns also on the interaction between these dependences and the high-level transformations. This is essential in order to enable the usage of the refactoring tools on the models with uniform dependences. Based on the high-level refactoring tools, strategies and heuristics can be designed to help explore the design space. We propose a strategy that allows to find good trade-offs in the usage of storage and computation resources, and in the parallelism (both task and data parallelism) exploitation, strategy illustrated on an industrial radar application

    High Level Loop Transformations for Multidimensional Signal Processing Embedded Applications

    Get PDF
    International audienceArray-OL specification model is a mixed graphical-textual language designed to model multidimensional intensive signal processing applications. Data and task parallelism are specified directly in the model. High level transformations are defined on this model, allowing the refactoring of an application and furthermore providing directions for optimization. The resemblances between with the wide-known and used Loop transformations lead us to try taking concepts and results from this domain and see how they fit in Array-OL context

    Optimisation des applications de traitement systématique intensives sur Systems-on-Chip

    No full text
    Les applications de traitement intensif de signal apparaissent dans de nombreux domaines d'applications tels que multimédia ou systèmes de détection. Ces applications gèrent les structures de données multidimensionnelles (principalement des tableaux) pour traiter les différentes dimensions des données (espace, temps, fréquence). Un langage de spécification permettant l'utilisation directe de ces différentes dimensions avec un haut niveau d'abstraction est une des clés de la manipulation de la complexité de ces applications et permet de bénéficier de leur parallélisme potentiel. Le langage de spécification Array-OL est conçu pour faire exactement cela. Dans cette thèse, nous introduisons une extension d'Array-OL pour exprimer des dépendances cycliques par des dépendances interrépétitions uniformes. Nous montrons que ce langage de spécification est capable d'exprimer les principaux motifs de calcul du domaine de traitement de signal intensif. Nous discutons aussi de la modélisation répétitive des applications parallèles, des architectures répétitives et les placements uniformes des premières sur les secondes, en utilisant les concepts Array-OL intégrés dans le profil UML MARTE (Modeling and Analysis of Real-time and Embedded systems). Des transformations de haut niveau data-parallèles sont disponibles pour adapter l'application à l'exécution, ce qui permet de choisir la granularité des flots et une simple expression du placement en étiquetant chaque répétition par son mode d'exécution: data parallèle ou séquentiel. L'ensemble des transformations a été revu, étendu et implémenté dans le cadre de l'environnement de comodélisation pour les systèmes embarqués, Gaspard2. Avec l'introduction des dépendances uniformes, notre intérêt s'est tourné aussi sur l'interaction entre ces dépendances et les transformations de haut niveau. C'est essentiel, afin de permettre l'utilisation des outils de refactoring sur les modèles avec dépendances uniformes. En utilisant les outils de refactoring de haut niveau, des stratégies et des heuristiques peuvent être conçues pour aider à l'exploration de l'espace de conception. Nous proposons une stratégie qui permet de trouver de bons compromis entre l'usage de stockage et de ressources de calcul, et dans l'exploitation de parallélisme (à la fois de tâches et de données), stratégie illustrée sur une application industrielle radar.Intensive signal processing applications appear in many application domains such as video processing or detection systems. These applications handle multidimensional data structures (mainly arrays) to deal with the various dimensions of the data (space, time, frequency). A specification language allowing the direct manipulation of these different dimensions with a high level of abstraction is a key to handling the complexity of these applications and to benefit from their massive potential parallelism. The Array-OL specification language is designed to do just that. In this thesis, we introduce an extension of Array-OL to express cycle dependences by the way of uniform inter-repetition dependences. We show that this specification language is able to express the main patterns of computation of the intensive signal processing domain. We discuss also the repetitive modeling of parallel applications, repetitive architectures and uniform mappings of the former to the latter, using the Array-OL concepts integrated into the Modeling and Analysis of Real-time and Embedded systems (MARTE) UML profile. High-level data-parallel transformations are available to adapt the application to the execution, allowing to choose the granularity of the flows and a simple expression of the mapping by tagging each repetition by its execution mode: data-parallel or sequential. The whole set of transformations was reviewed, extended and implemented as a part of the Gaspard2 co-design environment for embedded systems. With the introduction of the uniform dependences into the specification, our interest turns also on the interaction between these dependences and the high-level transformations. This is essential in order to enable the usage of the refactoring tools on the models with uniform dependences. Based on the high-level refactoring tools, strategies and heuristics can be designed to help explore the design space. We propose a strategy that allows to find good trade-offs in the usage of storage and computation resources, and in the parallelism (both task and data parallelism) exploitation, strategy illustrated on an industrial radar application.LILLE1-Bib. Electronique (590099901) / SudocSudocFranceF
    corecore